﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;

namespace JVP.Infrastructure
{
    public interface IGateway
    {
        bool isValidUser(string userName, string passWord);
        SqlDataReader getPlans();
        SqlDataReader getAllPlans();
        SqlDataReader getPlan(string planID);
        bool addPlan(string planName, string planTerm, string planType, string planStatus, string description);
        bool editPlan(string planID, string planName, string planTerm, string planType, string planStatus, string description);
        bool addScheme(int schemeDues, string planYear, string amtInstall, string amtConsi, string amtExpConsi, string amtAccConsi, string plotSize, string schemeStatus, string planID);
        bool editScheme(string schemeID, int schemeDues, string planYear, string amtInstall, string amtConsi, string amtExpConsi, string amtAccConsi, string plotSize, string schemeStatus, string planID);
        SqlDataReader getScheme(string planID);
        SqlDataAdapter getSchemes();
        SqlDataReader getBranches();
        SqlDataReader getBranch(string branchID);
        bool addBranch(string branchCode, string branchName, string branchCity, string branchCCode);
        bool createAccount(string fName, string lName, DateTime dob, string empAddress, string empMobile, string empStatus, int branchID);
        bool changePassword(string userName, string oldPass, string newPass);
        bool addDesignation(string designationName, int rank, decimal firstYear, decimal secondYear, decimal thirdYear, decimal lumpSum);
        bool editDesignation(int designationID, string designationName, int rank, decimal firstYear, decimal secondYear, decimal thirdYear, decimal lumpSum);
        SqlDataAdapter getDesignations();
        SqlDataAdapter getDownLine();
        SqlDataAdapter getInformations(string designID);
        SqlDataAdapter getCustomers(string designID);
        SqlDataReader getUpline(string designID);
        SqlDataReader getOfficeStaffDetails(string userID);
        bool addPolicy(int schemeID, int cssNo, string pName, string pAge, string pGender, string fatherOf, string rName, string nName, string nAge, string nRelation, string pAddress, DateTime dateComm, int agentCode, DataSet upLine, string userID, int branchID);
        SqlDataAdapter getRankList();

    }
}
